package a_math;

import java.math.BigDecimal;
import java.math.RoundingMode;

/**
 * @author Cheng-02
 * @version V1.0
 * @Package a_math
 * @date 2024/4/6 13:41
 */
public class test03 {
    public static void main(String[] args) {
        BigDecimal b = new BigDecimal("234423.3712846813");
        BigDecimal b1 = new BigDecimal("234423.32312312");
//        static BigDecimal valueOf(double val) ->此方法在初始化小数时可以传入double数据
//        加： BigDecimal add(BigDecimal val) 返回值为 (this + val) 。
        System.out.println(b.add(b1));
//        减： BigDecimal subtract(BigDecimal val) 返回值为 (this - val) 。
        System.out.println(b.subtract(b1));
//        乘： BigDecimal multiply(BigDecimal val) 返回值为 (this * val) 。
        System.out.println(b.multiply(b1));
//        除： BigDecimal divide(BigDecimal val) 返回值为 (this / val) 。


//        BigDecimal divide(BigDecimal divisor, int scale, int roundingMode)
//        divisor：除号后面那个数， scale：指定保留几位小数， roundingmode：取舍方式
//        ROUND_UP:向上加一  ROUND_DOWN：直接舍去  ROUND_HALF_UP：四舍五入
        System.out.println(b.divide(b1, 23, RoundingMode.UP));//四舍五入
    }

}

